


/***********************************************************************************
			FUNCION PARA EJECUCION DE REPORTES
var valor = 1 para formulario FACTURAS
    valor = 2 para formulario RETENCI0NES
	valor = 3 para reportes de TODOS 
***********************************************************************************/
	

function ejecutarReporte(opcion,valor)
{
	var parametros ="valor_reporte="+opcion+"&tipo_reporte="+valor;
	//alert("Estos son los parametros"+parametros);
	$.ajax({ async:true, type: "GET", dataType: "html", url:"parts/reportes/ajax/ejecutarReporte.php", data:parametros, beforeSend:inicioReporte, success:llegadaReporte, timeout:2000, error:problemasReporte });
	return false;	
}


function ejecutarReporte1(opcion1,opcion2,valor)
{
	var parametros ="valor_reporte="+opcion1+"&valor_reporte2="+opcion2+"&tipo_reporte="+valor;
	//alert("Estos son los parametros"+parametros);
	$.ajax({ async:true, type: "GET", dataType: "html", url:"parts/reportes/ajax/ejecutarReporte.php", data:parametros, beforeSend:inicioReporte, success:llegadaReporte, timeout:2000, error:problemasReporte });
	return false;	
}

function ejecutarReporte2(opcion,valor,opcion2,opcion3)
{
var parametros ="valor_reporte="+opcion+"&valor_reporte2="+opcion2+"&valor_reporte3="+opcion3+"&tipo_reporte="+valor;
	//alert("Estos son los parametros"+parametros);
	$.ajax({ async:true, type: "GET", dataType: "html", url:"parts/reportes/ajax/ejecutarReporte.php", data:parametros, beforeSend:inicioReporte, success:llegadaReporte, timeout:2000, error:problemasReporte });
	return false;	
}

function inicioReporte()
{
	
}

function llegadaReporte(datos)
{
	//alert("Estos son los datos"+datos);
	datos=datos.split(" ");
	tipo_reporte = datos[1];
	valor_reporte = datos [0];
		
	if(datos[0]!="n")
	{ 	
		if (tipo_reporte==1)
		{
		url = "parts/reportes/generadores/reporte1.php?valor_reporte="+valor_reporte;
		location.href=url;
		}

		if (tipo_reporte==2)
		{
		url = "parts/reportes/generadores/reporte19.php?valor_reporte="+valor_reporte;
		location.href=url;
		}
		
		if (tipo_reporte==3)
		{
		url = "parts/reportes/generadores/reporte2.php?valor_reporte="+valor_reporte;
		location.href=url;
		}
		
		if (tipo_reporte==4)
		{
		url = "parts/reportes/generadores/reporte3.php?valor_reporte="+valor_reporte;
		location.href=url;
		}
		
		if (tipo_reporte==5)
		{
		valor_reporte2 = datos [2];
		url = "parts/reportes/generadores/reporte4.php?valor_reporte="+valor_reporte+"&valor_reporte2="+valor_reporte2;
		location.href=url;
		}
		if (tipo_reporte==6)
		{
		url = "parts/reportes/generadores/reporte5.php?valor_reporte="+valor_reporte;
		location.href=url;
		}
		if (tipo_reporte==7)
		{
		url = "parts/reportes/generadores/reporte6.php?valor_reporte="+valor_reporte;
		location.href=url;
		}
		if (tipo_reporte==8)
		{
		url = "parts/reportes/generadores/reporte7.php?valor_reporte="+valor_reporte;
		location.href=url;
		}
		if (tipo_reporte==9)
		{
		url = "parts/reportes/generadores/reporte8.php?valor_reporte="+valor_reporte;
		location.href=url;
		}
		if (tipo_reporte==10)
		{
		url = "parts/reportes/generadores/reporte9.php?valor_reporte="+valor_reporte;
		location.href=url;
		}
		if (tipo_reporte==11)
		{
		url = "parts/reportes/generadores/reporte10.php?valor_reporte="+valor_reporte;
		location.href=url;
		}
		
		if (tipo_reporte==12)
		{
		url = "parts/reportes/generadores/reporte11.php?valor_reporte="+valor_reporte;
		location.href=url;
		}

		
		if (tipo_reporte==13)
		{
		url = "parts/reportes/generadores/reporte12.php?valor_reporte="+valor_reporte;
		location.href=url;
		}
		
		if (tipo_reporte==14)
		{
		url = "parts/reportes/generadores/reporte13.php?valor_reporte="+valor_reporte;
		location.href=url;
		}

		
		if (tipo_reporte==15)
		{
		url = "parts/reportes/generadores/reporte14.php?valor_reporte="+valor_reporte;
		location.href=url;
		}
		
		if (tipo_reporte==16)
		{
		url = "parts/reportes/generadores/reporte15.php?valor_reporte="+valor_reporte;
		location.href=url;
		}
		
		if (tipo_reporte==17)
		{
		url = "parts/reportes/generadores/reporte16.php?valor_reporte="+valor_reporte;
		location.href=url;
		}

		if (tipo_reporte==18)
		{
		url = "parts/reportes/generadores/reporte17.php?valor_reporte="+valor_reporte;
		location.href=url;
		}
		if(tipo_reporte==19)
		{
		valor_reporte2 = datos [2];
		valor_reporte3 = datos [3];
		
		url = "parts/reportes/generadores/reporte18.php?valor_reporte="+valor_reporte+"&valor_reporte2="+valor_reporte2+"&valor_reporte3="+valor_reporte3;
		location.href=url;
			
		}
		if (tipo_reporte==14)
		{
		url = "parts/reportes/generadores/reporte20.php?valor_reporte="+valor_reporte;
		location.href=url;
		}
		if (tipo_reporte==15)
		{
		url = "parts/reportes/generadores/reporte21.php?valor_reporte="+valor_reporte;
		location.href=url;
		}

	}
	else
	{ 
	alert ("No existen Registros con los parametros ingresados.");
	}
	
}

function problemasReporte()
{
	alert("Problemas en el Servidor");
	setTimeout("javascript:updateView('parts/reportes/reportes.php')"); 
}

/************************************************************************
DESCRIPCION: busca caracteres que no sean espacio en blanco en una cadena
*************************************************************************/
function vacio(campo) {
	for ( i = 0; i < campo.length; i++ ) {
		if ( campo.charAt(i) != "0" ) {
			return true
		}
	}
	return false
}
//////////////////////Funcion encargada de validar los parametros recibidos por los reportes/////////////////
function valida_reporte(valor)
{  	
	//alert("Este es el valor"+valor);
	if(valor==1)
	{
	var opcion=document.formulario.subcomision.value;
	ejecutarReporte(opcion,valor);
	}
	if(valor==2)
	{
	var opcion=document.formulario.codigo.value;
	ejecutarReporte(opcion,valor);
	}
	if(valor==3)
	{
	var opcion=document.formulario.status.value;
	ejecutarReporte(opcion,valor);
	}
	if(valor==4)
	{
	var opcion=document.formulario.subcomision1.value;
	ejecutarReporte(opcion,valor);
	}
	
	if(valor==5)
	{
	var opcion1=document.formulario.subcomision2.value;
	var opcion2=document.formulario.status2.value;	
	ejecutarReporte1(opcion1,opcion2,valor);
	}
	if(valor==6)
	{
	var opcion=document.formulario.tpo_organismo.value;
	ejecutarReporte(opcion,valor);
	}
	if(valor==7)
	{
	var opcion=document.formulario.status3.value;
	ejecutarReporte(opcion,valor);
	}
	if(valor==8)
	{
	var opcion=document.formulario.subcomision3.value;
	ejecutarReporte(opcion,valor);
	}
	if(valor==9)
	{
	var opcion=document.formulario.subcomision4.value;
	ejecutarReporte(opcion,valor);
	}
	if(valor==10)
	{
	var opcion=document.formulario.login.value;
	ejecutarReporte(opcion,valor);
	}
	if(valor==11)
	{
	var opcion=document.formulario.ente_v.value;
	ejecutarReporte(opcion,valor);
	}

	if(valor==12)
	{
	var opcion=document.formulario.ente_c.value;
	ejecutarReporte(opcion,valor);
	}

	if(valor==13)
	{
	var opcion=document.formulario.financiamiento.value;
	ejecutarReporte(opcion,valor);
	}
	if(valor==14)
	{
	var opcion=document.formulario.subcomision.value;
	ejecutarReporte(opcion,valor);
	}
	if(valor==15)
	{
	var opcion=document.formulario.codigo.value;
	ejecutarReporte(opcion,valor);
	}
	if(valor==16)
	{
	var opcion=document.formulario.categoria.value;
	ejecutarReporte(opcion,valor);
	}
	if(valor==17)
	{
	var opcion1=document.formulario.subcomision2.value;
	var opcion2=document.formulario.status2.value;	
	ejecutarReporte1(opcion1,opcion2,valor);
	}
	if(valor==18)
	{
	var opcion=document.formulario.status3.value;
	ejecutarReporte(opcion,valor);
	}
	if(valor==19)
	{
			if(vacio(document.formulario.fecha.value) == false)
			{	
			alert("Debe Seleccionar una Fecha o un rango de Fechas para Generar el reporte.");
			return false;
			}
			if(validaCalendario(document.formulario.fecha.value,document.formulario.fecha2.value)==false)
			{	
			alert("La Fecha 1 no debe ser mayor a la fecha 2");
			return false;
			}
			
			if(document.formulario.cod_proyecto.value==0)
			{	
			alert("Debe Seleccionar el Proyecto a Consultar.");
			return false;
			}
			var opcion=document.formulario.cod_proyecto.value;
			var opcion2=document.formulario.fecha.value;
			var opcion3=document.formulario.fecha2.value;
			ejecutarReporte2(opcion,valor,opcion2,opcion3);
	}
	


}

	
/*************************************************************************************************
DESCRIPCI0N: VALIDA QUE LA FECHA DEL CALENDARIO 1 SEA MENOR A LA FECHA DEL CALENDARIO 2
*************************************************************************************************/
function validaCalendario(fecha1,fecha2)
{	
	fecha1=fecha1.split("-");
	fecha2=fecha2.split("-");
	
	

			if(fecha2[2]<fecha1[2])
			{ return false; }
			
			if(fecha2[2]==fecha1[2])
			{ 
				if(fecha2[1]<fecha1[1])
				{ return false; }
				if(fecha2[1]==fecha1[1])
				{
					if(fecha2[0]<fecha1[0])
					{
					return false;
					}
				}
			}
return true;
}


function currencyValor(fld, milSep, decSep, e) {
    var sep = 0;
    var key = '';
    var i = j = 0;
    var len = len2 = 0;
    var strCheck = '0123456789';
    var aux = aux2 = '';
    var whichCode = (window.Event) ? e.which : e.keyCode;
    if (whichCode == 13) return true; // Enter
        if (whichCode == 8) return true; // Enter
        if (whichCode == 46) return true; // Enter
    key = String.fromCharCode(whichCode); // Get key value from key code
    if (strCheck.indexOf(key) == -1) return false; // Not a valid key
    len = fld.value.length;
    for(i = 0; i < len; i++)
     if ((fld.value.charAt(i) != '0') && (fld.value.charAt(i) != decSep)) break;
    aux = '';
    for(; i < len; i++)
     if (strCheck.indexOf(fld.value.charAt(i))!=-1) aux += fld.value.charAt(i);
    aux += key;
    len = aux.length;
    if (len == 0) fld.value = '';
    if (len == 1) fld.value = '0'+ decSep + '0' + aux;
    if (len == 2) fld.value = '0'+ decSep + aux;
    if (len > 2) {
     aux2 = '';
     for (j = 0, i = len - 3; i >= 0; i--) {
      if (j == 3) {
       aux2 += milSep;
       j = 0;
      }
      aux2 += aux.charAt(i);
      j++;
     }
     fld.value = '';
     len2 = aux2.length;
     for (i = len2 - 1; i >= 0; i--)
      fld.value += aux2.charAt(i);
     fld.value += decSep + aux.substr(len - 2, len);
    }
    return false;
}

	
/*************************************************************************************************
DESCRIPCI0N: VALIDA QUE LA FECHA DEL CALENDARIO 1 SEA MENOR A LA FECHA DEL CALENDARIO 2
*************************************************************************************************/
function validaCalendario(fecha1,fecha2)
{	
	fecha1=fecha1.split("-");
	fecha2=fecha2.split("-");
	
	

			if(fecha2[2]<fecha1[2])
			{ return false; }
			
			if(fecha2[2]==fecha1[2])
			{ 
				if(fecha2[1]<fecha1[1])
				{ return false; }
				if(fecha2[1]==fecha1[1])
				{
					if(fecha2[0]<fecha1[0])
					{
					return false;
					}
				}
			}
return true;
}

